Site cover image

Site icon imageSen(Qian)’s Memo

This website is Donglin Qian (Torin Sen)’s memo, especially about machine learning papers and competitive programming.

2021-TPAMI-[LBE]Instance-Dependent Positive and Unlabeled Learning With Labeling Bias Estimation

https://www.computer.org/csdl/journal/tp/2022/08/09361303/1rsezbEXNxS

Introduction

現在のPU Learningの多くはBiasを考慮せずに、Select Completely At Random(SCAR)の問題設定である。この論文では、Select At Random(SAR)のうち、Ground Truthのラベルyyに依存せず、インスタンスx\mathbf{x}にのみラベル付けされるかどうかの変数ssが依存する設定を考えている

つまり、PU Learningについて、SCARではPr(s=1y=1,x)=Pr(s=1y=1)=ηPr(s=1|y=1,\mathbf{x}) = Pr(s=1|y=1)=\etaであった。しかし、今ではラベル付けされるかはインスタンス依存のPropensity Scorによる。Pr(s=1y=1,x)=η(x)Pr(s=1|y=1,\mathbf{x}) = \eta(\mathbf{x})

この論文では、確率的なアプローチであるLabeling Bias Estimation(LBE)について提案した。今の問題設定では、η(x)\eta(\mathbf{x})Pr(y=1x),P(x)Pr(y=1|\mathbf{x}), P(\mathbf{x})の両方に依存する。これら2つの分布の推定のパラメタを最大尤度推定すれば解けるらしい。これはEM Algorithmで解くことができる。

これらについて、線形識別器とDNNの両方のモデルでそれぞれ実装する提案を行った。

提案手法はSingle-Training-Set(1set)の設定である。Case-Controlでは以下の「順序不変性」が成り立つ必要があるが強すぎる仮定ではないか、とこの論文は考えた。

順序不変性とは、ここではラベルがつきやすいければつきやすいほど、Positiveである。その逆も成り立つという仮定。 📄Arrow icon of a page link2019-ICLR-[PUSB]Learning from Positive and Unlabeled Data with a Selection Bias で述べられた。

Pr(s=1y=1,x1)Pr(s=1y=1,x2)Pr(y=1x1)Pr(y=1x2)Pr(s=1|y=1,\mathbf{x}_1) \leq Pr(s=1|y=1,\mathbf{x}_2) \\ \Leftrightarrow Pr(y=1|\mathbf{x}_1) \leq Pr(y=1|\mathbf{x}_2)

Proposed Method

問題設定

  • データは(x,y,s)(\mathbf{x}, y, s)で個数分与えられる。
    • データ本体はxXRd\mathbf{x} \in X \subseteq \mathbb{R}^dである。
    • Ground Truthのラベルはy=0y=0でNegative、y=1y=1でPositive。
    • s=1s=1はラベルがついている。s=0s=0はラベルなし。

全体的なグラフィカルモデル

インスタンス依存なので、以下のようになる。

Image in a image block
Image in a image block

詳細な確率は以下の通り。

Image in a image block
  • (1, 2行目)Ground TruthがNegativeの例に対して、ラベルは必ず付かない。(PUの問題設定)
  • (3, 4行目)Ground TruthがPositiveの例に対して、ラベルがつく確率はPropensity Scoreのη(x;θ2)\eta(\mathbf{x};\theta_2)である(パラメタθ2\theta_2によるモデル)

モデル化

それぞれ、以下のものを頑張ってモデル化してみる。

h(x;θ1)=Pr(y=1x)η(x;θ2)=Pr(s=1y=1,x)h(\mathbf{x};\theta_1) = Pr(y=1|\mathbf{x}) \\ \eta(\mathbf{x};\theta_2) = Pr(s=1|y=1, \mathbf{x})

これをロジスティックモデルでやったり(1+exp(θ1Tx))1(1+\exp(-\theta_1 ^ T \mathbf{x}))^{-1}、MLPでやったりといろいろありうる。

パラメタの学習

Image in a image block

ここでのθ\thetaは、2つのパラメタθ1,θ2\theta_1, \theta_2を共に含む。

右辺について、logをとって最小化するのを考える。

Image in a image block

ここで、隠れ変数をyiy_iとすることで、P(yisi,xi)P(y_i | s_i, \mathbf{x}_i)のモデルがわかっている前提でlogP(sixi;θ)\log P(s_i | \mathbf{x}_i; \theta)をEM Algorithmで推定できる。

📄Arrow icon of a page linkEM Algorithmの解説

具体的には、以下のようなELBOの最大化を考える。

logP(sixi;θ)=ELBO+DKL(q(yi)p(yisi,x))ELBO=Eq(yi)[logp(x,si,yi)logq(yisi,x)]=Eq(yisi,x)[logp(si,xyi)]+Eq(yisi,x)[logp(yi)logq(yisi,x)]\log P(s_i | \mathbf{x}_i;\theta) = ELBO + D_{KL}(q(y_i)||p(y_i|s_i, \mathbf{x})) \\ ELBO = \mathbb{E}_{q(y_i)} [\log p(\mathbf{x}, s_i, y_i) - \log q(y_i|s_i, \mathbf{x})] \\ = \mathbb{E}_{q(y_i|s_i, \mathbf{x})} [\log p(s_i, \mathbf{x}|y_i)] + \mathbb{E}_{q(y_i|s_i, \mathbf{x})} [\log p(y_i) - \log q(y_i|s_i, \mathbf{x})]
Eステップ

ここでは、ELBOの最大化のために、qqを動かす。これはKLダイバージェンス最小となればいいので、q(yi)=p(yisi,x)q(y_i) = p(y_i | s_i, \mathbf{x})となる。

ここで、以下のようにp(yisi,xi)p(y_i | s_i, \mathbf{x}_i)が以下のように得られる。

Image in a image block

ここで、P(yixi,si)=P(si,yixi)/P(sixi)P(y_i|\mathbf{x}_i, s_i) = P(s_i, y_i|\mathbf{x}_i)/P(s_i|\mathbf{x}_i)であり、分母は明らかにyiy_iの関数ではなく、定数なのでq(yi)q(y_i)の最適化に不要だから。

Mステップ

次に、qqを固定して、パラメタを学習する。ここでいうパラメタは、p(yisi,xi)p(y_i|s_i, \mathbf{x}_i)のパラメタ(ロジスティック回帰のパラメタだったりMLPのパラメタだったり)である。

これは、以下の式を最大化する。

arg maxθyip(yixi,si,θold)logp(xi,si,yiθ)=𝔼yisi,xi,θold[logp(xi,si,yiθ)]\argmax_\theta \sum_{y_i} p(y_i|\mathbf{x}_i,  s_i, \theta _{old}) \log  p(\mathbf{x}_i, s_i, y_i|θ) = 𝔼 _{y_i|s_i, \mathbf{x}_i, \theta _{old}}[\log  p(\mathbf{x}_i, s_i, y_i|θ)]

ここで、p(xi,si,yiθ)p(\mathbf{x}_i, s_i, y_i | \theta)についてグラフィカルモデルに従い展開する。

logp(xi,si,yiθ)=logp(xiθ)+logp(sixi,θ)+logp(yixi,si,θ)\log p(\mathbf{x}_i, s_i, y_i | \theta) = \log p(\mathbf{x}_i | \theta) + \log p(s_i|\mathbf{x}_i, \theta) + \log p(y_i | \mathbf{x}_i, s_i, \theta)

ここで、第一項のp(xiθ)p(\mathbf{x}_i | \theta)は、パラメタによってp(xi)p(\mathbf{x}_i)を近似しているといえるが、これは既知というか定数であると考える(データの分布は変わらない)なら、最大化するのは2つの項のみである。

EMアルゴリズムはこうやってわかっている部分をどんどん削ぎ落していい。

残った2つの項について、h,ηh, \etaを用いて対数尤度を計算できるので、これでOKである。

最後に、これの最大化はGradient Ascendによって行う。

Noisy Label PUデータへの対処

h(x;θ1)=Pr(y=1x)h(\mathbf{x};\theta_1) = Pr(y=1|\mathbf{x})の学習について、単純にロジスティック回帰や多層パーセプトロンではなく、もう1つこのデータが信頼できるかどうか、という推定値h2(x;θ2)h_2(\mathbf{x};\theta_2)を考えて、

h(x;θ1)h2(x;θ2)h(\mathbf{x};\theta_1) \cdot h_2(\mathbf{x};\theta_2)

このように信頼度を乗じた重み付きの学習とすることで対処するらしい。

この論文では、h2h_2は同様に確率的にモデル化されている。これも同様にロジスティック回帰や多層パーセプトロンらしい。

  1. Eステップの時に、p(yixi,si)p(y_i|\mathbf{x}_i, s_i)q(yi)q(y_i)として代入する部分で、このp(yi=1xi,si)p(y_i=1|\mathbf{x}_i, s_i)となる確率が低い場合は信頼できないとして、次のMステップでそのデータに該当するh2(xi;θ2)h_2(\mathbf{x}_i;\theta_2)を小さくする。
  2. 普通にMステップでθ2\theta_2も更新。

これ系でいつものことだが、Warm upは当然必要だろうしNoisy Rateが高いと辛そう。

あと2つもθ1,θ2\theta_1, \theta_2とパラメタ更新が必要なモデルがあると学習不安定になりそう。

Experiments

  • Baselineの手法は以下のようなもの。
  • データセットはガウス分布による合成データセットと、実データセット。
    • テーブルデータのような次元数が低いデータセットは、australian, madelon, phishing, vote, banknote, breastを使った。
    • 実データセットはUSPS、HockeyFight、SwissProtを使用。
      • USPSは手書き数字。
      • HockeyFightはアイスホッケーでの暴力行為の検出らしい。結構難しいデータセット。
      • SwissProtは、文書分類のPUのデータセット。バイアスを含んでいてバイアスあるPUの手法のテストによく使われる。
  • バイアスについては以下のように選択する。κ\kappaは10程度にしている。
    1. 決定境界から遠いPほどラベル付けされやすい。ラベルがつくかどうかの関数h(x)h(\mathbf{x})を以下のように定める。この関数ではより正しい判断であればあるほど、expが0へ近づく。
      h(x)=(11+exp(θTx))κh(\mathbf{x}) = (\frac{1}{1 + \exp(-\theta ^ T \mathbf{x})})^\kappa
    2. 決定境界から近いPほどラベル付けされやすい。難しいサンプルほどラベルがつくという形。
      h(x)=(111+exp(θTx))κh(\mathbf{x}) = (1 - \frac{1}{1 + \exp(-\theta ^ T \mathbf{x})})^\kappa